package com.kevin.designpattern.memento.balck_box;


public class Client {

    public static void main(String[] args) {

        System.out.println("==========大战BOSS前==========");
        // 创建游戏角色
        GameRole gameRole = new GameRole();
        //初始状态
        gameRole.initState();
        gameRole.stateDisplay();
        // 将游戏状态进行备份
        // 创建管理者对象
        RoleStateCaretaker roleStateCaretaker = new RoleStateCaretaker();
        roleStateCaretaker.setMemento(gameRole.saveState());
        System.out.println("==========大战BOSS后==========");
        gameRole.fight();
        gameRole.stateDisplay();
        System.out.println("==========恢复之前的状态==========");
        gameRole.recoverState(roleStateCaretaker.getMemento());
        gameRole.stateDisplay();
    }
}
